方法|説明
Timetableボタンを押して区間再生を設定する。
|ポップアップ動画ウインドウにTimetableボタンがある場合はそれを使って区間再生を設定できます。
書式
repeat:
リピート回数 , 開始秒または時間 - 終了秒または時間
例
repeat:0, 0-10, 90-120, 3600-3608
上の例と同等で、
repeat:0, 00:00-00:10, 01:30-02:00, 1:0:0-1:0:8
上の例と同等で、
repeat:0, 0s-10s, 1m30s-2m0s, 1h0s-1h8s
この書式の場合、秒パートのsは必須になります。
ミリ秒で指定したい場合は「0-10」の書式を使用して、
repeat:0, 0.5-10.567
のようにします。
または「0:0-0:10」(時:分:秒)の書式を使用して、
repeat:0, 0:0.5-0:10.567
のようにします。
または「0s-10s」(H-M-S-Ms)の書式を使用して、
repeat:0, 0s500ms-10s567ms
のようにします。
ここで、0.001は1/1000秒です。
これがどれくらい正確に実行されるかはWebブラウザの仕様や機器環境などによります。
0-10を2回再生するには、
repeat:1, 0-10, repeat:0, 90-120
なお、区間再生を動画に1つでも設定すると、全ての区間再生の完了時に動画は最初の区間再生に戻ります。
この規定動作により、「repeat:0, 0-10」も「repeat:4, 0-10」も「repeat:0, 0-10, 0-10, 0-10, 0-10 」も同じ結果になります。
Timetableボタンで書き込むテキストにデータの終了を示すセミコロン「;」を入れるとデータ構造が壊れる場合があります。
下のようにセミコロン「;」を置くとデータ構造が壊れてしまいます。
repeat:0, 0-10, 90-120, 3600-3608;
これを適正なデータに修正するには、
repeat:0, 0-10, 90-120, 3600-3608
とします。
dropMeImageのDescで動画のすぐ後にTimetableボタンを作って区間再生を設定する。
|
例
C:\httpdocroot\video\test.mp4;
Timetable=
repeat: 0,
00:00-00:08,
00:19-00:23,
repeat: 1,
13:46-13:54,
repeat: 0,
18:52-20:03
;
ボタン名文字列「Timetable」の頭にアンダースコア(_)を置いて「_Timetable」とすればボタンを非表示にできます。
_Timetable=repeat:0, volume:1;
ListItemBaseのtooltipbaseに区間再生設定を書き込む。
|
例
注意点
TimetableテキストにHTMLタグ(
)やkey=value構造(position=bottomLeftなど)、特定のクォーテーション・マーク(引用符のうち"や')が含まれる場合には上の例のようにその部分をコメント化してtooltipbase書式が壊れるのを避けなければなりません。
オプション名|書式|説明|使用例
オプション全般||
「repeat」項目は必須で、もしなければTimetable設定として認識されず、Timetableオプションも無視されます。
|
有効な例
Timetable=
repeat: 0,
volume: 0.3
;
無効な例
Timetable=
volume: 0.3
;
キャプション
|caption:文字列|表示時間(ミリ秒)|フォントサイズ|文字色|背景色|キャプション位置
又は、
caption:文字列|key1=value1 key2=value2 keyX=valueX ...
|
オプション名はキャプションですが、本来の目的は動画上に文字を表示させる事ではなく、動画ウインドウ上の「GoTo」ボタンでアクセスできる区間再生ジャンプメニューに文字や画像を表示させるためのものです。
captionはその区間再生位置の説明やサムネイルとして機能します。
文字列部分はHTMLで記述する事が可能ですので、結果的には画像など、文字列以外も出せます。
dropMeのDescにTimetableを書く場合にはセミコロンは*semicolon*に置き換える必要があります。
また、文字列・イコール・ダブルクォーテーションの組(例えば、文字列="文字列")は文字列・イコール・シングルクォーテーションの組(文字列='文字列')に置き換える必要があります。
つまり、
のstyleのようなエレメントの属性値の記述部分はこのルールに従って
のようにシングルクォーテーションと*semicolon*を使う必要があります。
表示時間など|で区切られたオプションは省略できます。
表示時間を省略した場合は3000ms(3秒間)になります。
キャプション文字列を保持するエレメントのクラス名は「divVideoCaption」となっていますので、CSSからデフォルトの文字の色や大きさなどを指定できます。
キャプション・テキストの部分強調表示を
[ ]ペアを使って表現できます。
[ ]ペアを使って強調表示させた場合の文字の大きさと色は「設定」にて設定できます。
ポップアップやツールチップに表示されている動画の場合は「ポップアップ / ツールチップ」セクションにて、
ページ・イメージビューアに表示されている動画の場合は「ページ・イメージビューア」セクションにて設定できます。
キャプション位置には、
center, 中央 (デフォルト値)
bottom, 中央下
bottomLeft, 左下
top, 中央上
topLeft, 左上
above, 動画ウインドウの上部
below, 動画ウインドウの下部
rightside, 動画ウインドウの右側
leftside, 動画ウインドウの左側
があります。
|で区切られたオプション文字列に@を入れるとスクリプトはそのオプションを無視します。
これは、オプションの位置を間違えないために使えます。
例えば、キャプション|@duration|@size|@color|@bgcolor|@position などとしてコメントのように使えます。
【captionのオプション設定にkey=valueの書式を使用する場合】
「key=value」パートに複数のオプションを設定するときは半角スペース区切りにする必要があります。
keyの種類には、duration、size、color、bgcolor、positionがあります。
|
例1: 最もシンプル。「repeat:」の記述はTimetableを機能させるために必須。
Timetable=
repeat:0,
caption:スタート;
例2: 砂場サンプルより。「|区切り書式」を使ってcaption表示時間を4秒間とする。
Timetable=
repeat:0,
caption:4000,
0s-2s,
0s-3s
;
例3: 区間再生ポイントに画像を結びつける。「|区切り書式」を使ってcaption位置をbottomLeftとする。
Timetable=
repeat:0,
caption:猫動画|@delay|@size|@color|@bgcolor|bottomLeft,
volume:0,
playbackrate:1,
00:00-00:11
;
例4: 「key=valueの書式(区切り文字は半角スペース)」を使ってcaption位置をbottomLeft、文字色を赤とする。
Timetable=
repeat:0,
caption:スタート|position=bottomLeft color=red,
volume:0,
playbackrate:1,
00:00-00:11
;
Timetableテキストはカンマ「,」で分割されたテキストを一つ一つ順に解釈して処理します。
下のように項目の書き順を変えると処理されるタイミングが変わりますのでご注意ください。
Timetable=
repeat:0,
caption:スタート,(処理タイミング:即時)
playbackrate:0.5,(処理タイミング:即時)
00:00-00:11(処理タイミング:即時)
;
上のデータの書き順を下のように変えると...
Timetable=
repeat:0,
caption:スタート,(処理タイミング:即時)
00:00-00:11(処理タイミング:即時)
playbackrate:0.5,(処理タイミング:上の項目の処理から11秒以上経過した後)
;
キャプション文字列について、「GoToメニューには表示させたいがコンテンツ画面には表示させたくない」という場合は、例えばcolor=transparentとすれば簡単に解決できます。
動画再生速度、プレイバック・レート
|playbackRate:数値
|例えば数値が1の場合は1倍速度、0.5の場合は半分の速度になります。
数値の有効範囲についてはHTML5 videoの仕様や各Webブラウザでの仕様をご確認下さい。
|砂場サンプルより
Timetable=
repeat:0,
playbackrate:1,
0s-2s,
playbackrate:0.5,
0s-3s
;
音量、ボリューム
|volume:数値
|例えば数値1で最大音量、数値0.5で半分の音量、数値0でミュートと同じ状態になります。
|砂場サンプルより
Timetable=
repeat:0,
volume:0,
0s-2s,
volume:1,
0s-3s
;
リピート・モード
|repeatMode:数値、0、1または-1
|
repeatMode指定なし (デフォルト。 ジャンプ再生モード)
-
Timetableデータ・ブロックの実行を終えた後、再生時間の最後へと移動します。
つまり、ビデオが再生されるのはTimetableデータ・ブロックにある区間再生部だけであり、それが終わった後は再生を終了します。
この動作によりポップアップ上の動画の場合にはループ再生になっていれば再び最初から再生が始まり、スライドショーのスライド上の動画では次のスライドに行きます。
-
各AB-Repeatの実行を終えた後、次のAB-Repeatにジャンプします。
-
Repeatブロックの実行を終えた後、次のRepeatブロックにジャンプします。
repeatMode:0 (変則ジャンプ再生モード)
-
Timetableデータ・ブロックの実行を終えた後、続いて残りの再生を続けます。(repeatMode指定なしの場合と異なる部分)
-
各AB-Repeatの実行を終えた後、次のAB-Repeatにジャンプします。
-
Repeatブロックの実行を終えた後、次のRepeatブロックにジャンプします。
repeatMode:1 (永久リピート&ジャンプ再生モード)
-
Timetableデータ・ブロックの実行を終えた後、再びTimetableデータ・ブロックを呼びます。
つまりTimetableデータ・ブロックにある区間再生部をループします。
この動作はポップアップ上の動画の場合はrepeatMode:0のときと変わりませんが、スライドショーのスライド上の動画では次のスライドに行かないためにそれと動作が異なります。
-
各AB-Repeatの実行を終えた後、次のAB-Repeatにジャンプします。
-
Repeatブロックの実行を終えた後、次のRepeatブロックにジャンプします。
repeatMode:-1 (継続再生モード)
-
Timetableデータ・ブロックの実行を終えた後、続いて残りの再生を続けます。
-
各AB-Repeatの実行を終えた後、続いて残りの再生を続けます。
-
Repeatブロックの実行を終えた後、続いて残りの再生を続けます。
ここでいうTimetableデータ・ブロックとは「Timetable=」か「_Timetable=」で始まり、「;」で終わるデータの一区切りです。
AB-Repeatとは「0:03-0:40」のようなデータ部分です。
Repeatブロックとは「repeat:」で始まる「repeat:0, 0:03-0:40, 0:50-0:60,」のようなデータの一区切りです。
|カッコ()内のテキストは説明です
Timetable=
repeat:3,
(repeatデータブロックを3回リピート、つまり計4回実行する。)
repeatMode:0,
(repeatデータブロックの終了時間後も続いて再生を続ける。この「repeatMode-0」は次のrepeatデータブロックなどで変更しない限り維持される。)
volume:1,
0:5.123-0:8.456,
caption:[再生時間「0:8.456」時]にこのテキストがコンテンツの中央付近に1.5秒間表示される|position=center duration=1500,
(この「position-center」は次のrepeatデータブロックなどで変更しない限り維持される。)
0:8.456-0:12.789,
(区間再生の開始時間を直前の区間再生の終了時間と同じにすることで再生ラグを発生させる時間切り替え処理をスキップすることができる。)
repeat:0,
caption:最終repeatデータブロック
;
Timetable=
repeat:3,
repeatMode:0,
volume:1,
0:5.123-0:8.456,
caption:[再生時間「0:8.456」時]にこのテキストがコンテンツの中央付近に1.5秒間表示される|position=center duration=1500,
0:8.456-0:12.789,
repeat:0,
caption:最終repeatデータブロック
;
repeatModeの説明はややこしくて分かりにくいと思います。
追加で説明すると、
動画全体のうち特定の部分だけ再生したい場合は通常repeatModeの指定無しでいけます。
例えば、全体が5:00の動画のうち、1:00-2:00部を
1回再生、3:00-4:00部を
1回再生、それ以外の部分は再生しない場合はrepeatMode指定無し(ジャンプ再生モード)で、
Timetable=repeat:0, 1:00-2:00, repeat:0, 3:00-4:00;
また例えば、全体が5:00の動画のうち、1:00-2:00部を
2回再生、3:00-4:00部を
2回再生、それ以外の部分は再生しない場合はrepeatMode指定無し(ジャンプ再生モード)で、
Timetable=repeat:1, 1:00-2:00, repeat:1, 3:00-4:00;
動画を全時間再生する中で特定の部分だけを繰り返し再生したい場合は通常repeatMode:-1(継続再生モード)でいけます。
例えば、全体が5:00の動画を0:00-5:00までの全時間再生する中で、1:00-2:00部を
2回再生、3:00-4:00部を
2回再生する場合はrepeatMode:-1(継続再生モード)を使って、
Timetable=
repeat:0, repeatMode:-1, 0:00-0:01,
repeat:1, 1:00-2:00,
repeat:1, 3:00-4:00;
また、repeatMode:-1と併せてrepeatMode:1(ジャンプ再生モード)やrepeatModeOnce(使い捨てrepeatMode変更)を使えば更なる再生制御ができます。
例えば、全体が5:00の動画を
0:30-
4:30まで再生する中で、1:00-2:00部を
2回再生、3:00-4:00部を
2回再生する場合はrepeatMode:-1(継続再生モード)とrepeatMode:1(ジャンプ再生モード)を使って、
Timetable=
repeat:0, repeatMode:-1, 0:30-0:31,
repeat:1, repeatMode:-1, 1:00-2:00,
repeat:1, repeatMode:-1, 3:00-4:00,
repeat:0, repeatMode:1, 4:00-4:30;
またはrepeatMode:-1(継続再生モード)と
repeatModeOnce(現Repeatブロックで1度だけrepeatModeを変更&現Repeatブロック離脱後に元のrepeatModeを復元)を使って、
Timetable=
repeat:0, repeatMode:-1, 0:30-0:31,
repeat:1, 1:00-2:00,
repeat:1, 3:00-4:00,
repeat:0, repeatModeOnce:1, 4:00-4:30;